home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / pctj8307.arc / HAT.PAS < prev    next >
Pascal/Delphi Source File  |  1984-01-23  |  1KB  |  51 lines

  1.           PROGRAM HAT;
  2.  
  3.           ($N+)(TURN ON NATIVE CODE GENERATION)
  4.           (R-)(TURN OFF RANGE CHECKING)
  5.           USES TURTLEGRAPHICS;
  6.  
  7.           CONST
  8.             P=160;
  9.             Q=100;
  10.             XP=144;
  11.             YP=56;
  12.             ZP=64;
  13.  
  14.           VAR
  15.             X1, Y1, ZF, XF, ZT, XT, XR, YY, XPZP : REAL;
  16.             XP2, ZI, XL, XI : INTEGER;
  17.             FOREVER : BOOLEAN;
  18.             A : INTEGER;
  19.  
  20.             BEGIN (** MAIN PROGRAM **)
  21.               XR := 1.5*3.1415927;
  22.               XF := XR/XP;
  23.               XPZP := XP/ZP;
  24.               XP2 := XP*XP;
  25.  
  26.               ZF := XR/ZP;
  27.               FOREVER := FALSE;
  28.  
  29.               FOR ZI := -Q TO Q+1 DO
  30.                 BEGIN
  31.                   IF (ZI > -ZP) AND (ZI < ZP) THEN
  32.                     BEGIN
  33.                       ZT := ZI * XPZP;
  34.                       XL := TRUNC (0.5 + SQRT (XP2 - ZT*ZT));
  35.                       FOR XI := -XL TO XL DO
  36.                         BEGIN
  37.                           XT := SQRT (XI*XI + ZT*ZT) * XF;
  38.                           YY := (SIN (XT) + 0.4 * SIN (3 * XT)) * YP;
  39.                           X1 := XI + ZI + P;
  40.                           Y1 := YY - ZI + Q;
  41.                           SETPIXEL (0, X1, Y1, 2);
  42.                         END;
  43.                     END; (IF)
  44.                 END; (NEXT ZI)
  45.  
  46.                 REPEAT
  47.                   A := A+1
  48.                 UNTIL FOREVER;
  49.  
  50.             END. (** MAIN PROGRAM **)
  51.